<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>初识setup</title>
</head>
<body>
    <div id="app"></div>
</body>
<script src="https://unpkg.com/vue@next"></script>
<script>
    /*
    1.理解： Vue.0中一个新歌配置项，值为一个函数
    2.组件中所用到的：数据、方法等等，均要配置在setup中
    3.
    */
    const app = Vue.createApp({
        data() {
            return {
               // name: 'andy',
                sex: '男',
               // age: 25
            }
        },
        template: `
            <div>
                <h1>我的信息</h1>
                <h2>姓名：andy</h2>
                <h2>性别：sex</h2>
                <h2>年龄：age</h2>
                <button @click="sayHello" > 打招呼</button>
            </div>
        `,

       methods: {
           test1(){
               console.log(`姓名：${this.name} 年龄：${this.age} sayHello: ${this.sayHello}`)//`多行换行符
           }

        //    sayHello(){
        //        alert(`您好！我是${this.name}, 今年：${this.age} 岁！`)
        //    }
       },
       //1、在setup中不能使用this,因为setup在data methods等属性配置之间调用setup
       setup(props){
           let name = 'andy';
           let age = 25;
           function sayHello(){
               console.log('sayHello --> ',name, age);
               alert(`您好！我是${name}, 今年：${age} 岁` )

           }
           function test2() {

           }
       }
    })

    const vm = app.mount("#app")
</script>
</html>